package org.ccams.dao;

import org.ccams.domain.TMateriel;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
import java.util.List;
import org.ccams.util.PageParameter;

public class TMaterielDao extends SqlMapClientDaoSupport {

	public TMateriel getTMaterielById(long id) {
		return (TMateriel) getSqlMapClientTemplate().queryForObject("t_materiel.getTMaterielById", id);
	}

	/**
	 * 返回指定页码的数据
	 * 
	 * @return
	 */
	@SuppressWarnings({ "unchecked" })
	public List<TMateriel> getTMaterielByPage(PageParameter pageParmeter) {
		return getSqlMapClientTemplate().queryForList("t_materiel.getTMaterielByPage", pageParmeter);
	}

	@SuppressWarnings("unchecked")
	public List<String> getTMaterielSpecByClass(String classId) {
		return getSqlMapClientTemplate().queryForList("t_materiel.getTMaterielSpecByClass", classId);
	}

	/**
	 * 返回记录总数
	 * 
	 * @return
	 */
	public int getCount(PageParameter pageParmeter) {
		return (Integer) getSqlMapClientTemplate().queryForObject("t_materiel.getTMaterielCount",
				pageParmeter);
	}

	/**
	 * 返回所有物料
	 * 
	 * @return
	 */
	@SuppressWarnings("unchecked")
	public List<TMateriel> getAllTMateriel() {
		return getSqlMapClientTemplate().queryForList("t_materiel.getAllTMateriel");
	}

	/**
	 * 添加物料
	 * 
	 * @param t
	 * @return
	 */
	public int addTMateriel(TMateriel t) {
		return getSqlMapClientTemplate().update("t_materiel.addTMateriel", t);
	}

	/**
	 * 更新物料
	 * 
	 * @param t
	 * @return
	 */
	public int updateTMateriel(TMateriel t) {
		return getSqlMapClientTemplate().update("t_materiel.updateTMateriel", t);
	}

	/**
	 * 删除物料
	 * 
	 * @param id
	 * @return
	 */
	public int deleteTMateriel(String id) {
		return getSqlMapClientTemplate().update("t_materiel.deleteTMateriel", id);
	}

	/**
	 * 返回查询条件的数据
	 * 
	 * @return
	 */
	@SuppressWarnings({ "unchecked" })
	public List<TMateriel> getTMaterielByPageAndKey(PageParameter pageParmeter) {
		return getSqlMapClientTemplate().queryForList("t_materiel.getTMaterielByPageAndKey", pageParmeter);
	}

	/**
	 * 统计查询条件的数据
	 * 
	 * @return
	 */
	public int getTMaterielCountByKey(PageParameter pageParmeter) {
		return (Integer) getSqlMapClientTemplate().queryForObject("t_materiel.getTMaterielCountByKey",
				pageParmeter);
	}

}